package org.example.rowing.mapper;

import org.apache.ibatis.annotations.Mapper;
import org.example.rowing.domain.Athlete;
import org.example.rowing.domain.RegistrationWithAthlete;

import java.util.List;

@Mapper
public interface RegistrationWithAthleteMapper {
    List<RegistrationWithAthlete> selectAllRegistrationWithAthletes();

    RegistrationWithAthlete selectRegistrationWithAthleteById(Long id);

    Boolean insertRegistrationWithAthlete(RegistrationWithAthlete registration);

    Boolean updateRegistrationWithAthlete(RegistrationWithAthlete registration);

    Boolean updateAthleteNameByAthleteId(Athlete athlete);

    Boolean deleteRegistrationWithAthlete(Long registrationId);

    List<RegistrationWithAthlete> selectRegistrationWithAthleteByConditions(RegistrationWithAthlete registration);

    Boolean batchInsertAthletes(List<RegistrationWithAthlete> registrationWithAthleteList);

    Boolean batchUpdateAthletes(List<RegistrationWithAthlete> registrationWithAthleteList);
}
